source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

"------------------------------------------------------------
set nocp
set et
set ts=2
set sw=2
set sts=2
set nobackup
set nu
set cino=g1h1:0
set guifont=courier_new:h10

map <F5> :call Compile()<CR>
func! Compile()
	if &filetype == 'python'
		exec "!python % <1.txt"
	elseif &filetype == 'cpp'
		exec "!g++ % -o %<.exe -O2 -std=c++0x -DLOCAL"
	else
		exec "echo 'unknown filetype'"
	endif
endfun

map <F6> :call Run()<CR>
func! Run()
	exec "!%<.exe <1.txt"
endfun
"------------------------------------------------------------

set diffexpr=MyDiff()
function MyDiff()
	let opt = '-a --binary '
	if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
	if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
	let arg1 = v:fname_in
	if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
	let arg2 = v:fname_new
	if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
	let arg3 = v:fname_out
	if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
	let eq = ''
	if $VIMRUNTIME =~ ' '
		if &sh =~ '\<cmd'
			let cmd = '""' . $VIMRUNTIME . '\diff"'
			let eq = '"'
		else
			let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
		endif
	else
		let cmd = $VIMRUNTIME . '\diff'
	endif
	silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
